So, halt, ich brauche noch eine Sache.
Mein Klicker.
Wir hatten letzte Woche ein wenig mehr Python gelernt und wir waren,
irgendwie sollten wir auch was sehen, wunderbar. Wir hatten uns um Eingabe und Ausgabe gekümmert.
Die Input-Funktion hatten wir und die Print-Funktion hatten wir uns angeguckt,
das ist relativ einfach, aber Input-Output findet auch über Dateien statt und wir hatten uns
Dateien angeguckt. Einmal hatten wir uns die Organisation von Dateien angeguckt,
weil man typischerweise auf modernen Computer viele von den Beestern hat, Millionen von den
Beestern hat typischerweise und deswegen werden wir in diese Ordnerstrukturen eingepackt und das
Wichtige daran ist, dass wir dadurch diese Dateipfade bekommen. Das ist nichts anderes als
eine Kette von Ordnernamen, die einer nach dem anderen durchlaufen werden müssen, bis man dann
irgendwann mal bei der Datei ankommt. In Unix und insbesondere auch natürlich auf
Jufbital Labs sind die Pfade durch einen Slash getrennt, durch einen Schreikstrich und in Windows
sind die durch einen umgekehrten Schreikstrich getrennt. In Unix ist sozusagen der Ordner aller
Ordner, heißt tatsächlich einfach nur Slash, da fängt alles an und dann kommt, was weiß ich,
User Slash, irgendwie sowas. Ab da kann ich Ihnen verbieten reinzugucken, im Dateisystem kann man
auch sagen, wer hat das Recht irgendwelche Sachen zu sehen, aber tatsächlich fängt hierbei alles an,
während wir in Windows irgendwie sowas sehen wie das. Also es gibt sozusagen unter Unix gibt es
einen Anfang, unter Windows gibt es mehrere davon. Es ist Jacke wie Hose, in Unix würden wir einfach
das machen, gar kein Problem, tatsächlich Jacke wie Hose. Wir haben die Organisation dieser Dinger
und das ganze passiert in einem sogenannten File System, das ist sozusagen ein Teilsystem des
Betriebssystems, das was den Computer steuert, was sich um die Organisation ihres persistenten
Speichers kümmert. Das macht nicht nur die Organisation, weil intern ist das natürlich
irgendwie anders organisiert, aber es zeigt sozusagen Ihnen zeigt es die Ordner, damit sie sich zu Recht
empfinden. Das macht aber auch andere Sachen, es schützt zum Beispiel gewisse Dateien, wenn irgendein
Programm auf die Biester schreibt oder lesen zugreifen will, merkt sich das, ach ja, dieses
Programm macht damit was, vielleicht sollte ein anderes Programm das nicht gerade mittendrin
löschen oder irgendetwas. Das heißt, wenn wir programmatisch mit Dateien umgehen wollen, müssen
wir sie immer, bevor wir irgendetwas mit ihnen machen, sie öffnen. Und höflich wie wir sind,
teilen wir dem Dateisystem auch mit, was wir mit den Biestern vorhaben. Wollen wir nur lesen,
wollen wir nur lesen oder wollen wir vielleicht auch darauf schreiben, je nachdem muss der
Schutzstatus unterschiedlich sein. Während nur lesend auf einer Datei können unter Umständen
mehrere Programme parallel machen, während wenn ein oder zwei Dateien gleichzeitig versuchen zu
schreiben, dann kann man sich schon überlegen, was passiert, wer zuletzt schreibt gewinnt und
das ist irgendwie auch Mist. Und deswegen müssen wir immer das öffnen und mitteilen, ob wir lesen
oder schreiben wollen. Und natürlich, ganz wichtig, wir müssen die Datei auch hinterher wieder
schließen. Das heißt einfach, so, ich bin damit fertig, andere Leute können damit auch umgehen.
Manchmal sehen Sie, wenn eine Datei nicht ordentlich geschlossen wurde, das Betriebssystem sagt,
die Datei kannst du jetzt aber nicht, damit kannst du ja nichts machen, weil das und das Programm,
was es schon längst nicht mehr gibt, damit was vorhat. Das ist typisch, wenn dann ein Programm
gestorben ist, ohne irgendwie noch Zeit zu haben, die Dateien zu schließen, dann passiert sowas.
Okay, Python benutzt sogenannte Dateiobjekte, um mit Dateien umzugehen. Wenn ich sage Dateiobjekte,
dann meine ich tatsächlich genau das, Python ist eine objektorientierte Programmiersprache und
obwohl wir eigentlich mit Objekten nichts zu tun haben wollen, weil die ein bisschen kompliziert
sind, hier sieht man sie an einigen Stellen doch. Und die sind aber nichts, wovor man Angst haben
sollte, nur die Syntax wird so ein bisschen komisch. Also was wir machen, ist, dass wenn wir diesen
Openbefehl nehmen, dann gibt man dem einen Dateipfad als Argument, das ist ein Stringen,
und Iausback ist sozusagen, will ich nur lesend oder schreibend darauf zugreifen,
und diese Datei gibt uns ein Dateiobjekt. Ein Dateiobjekt muss man sich tatsächlich vorstellen,
wie so ein Ding, was da herumliegt, was gewisse Sachen tun kann, aber sonst sein eigenes Leben
Presenters
Zugänglich über
Offener Zugang
Dauer
01:30:47 Min
Aufnahmedatum
2024-11-14
Hochgeladen am
2024-11-15 20:19:06
Sprache
de-DE